package com.danceforyou.receipt.service;

import com.danceforyou.common.service.BaseService;
import com.danceforyou.receipt.dao.ReceiptDAO;
import com.danceforyou.receipt.model.ReceiptDO;
import com.danceforyou.receipt.vo.ReceiptVO;
import org.springframework.web.multipart.MultipartFile;

import java.util.Map;

/**
 * 类名称：ReceiptService
 * 创建人：danceforyou
 * 创建时间：2021年02月07日
 * 版本号：1.0v
 */
public interface ReceiptService extends BaseService<Long, ReceiptDO, ReceiptVO, ReceiptDAO> {

    /**
     * 新增信息
     * @param receipt 信息
     */
    void saveInfo(ReceiptDO receipt);

    /**
     * 修改信息
     * @param receipt 信息
     */
    void updateInfo(ReceiptDO receipt);

    /**
     * 删除信息
     * @param ids 主键
     * @return 删除条数
     */
    int deleteInfoByIds(String ids);

    /**
     * 审核通过回款申请
     * @param fileList 回款凭证
     * @param ids 回款IDS
     * @return int
     */
    int setReceiptAuditPass(MultipartFile[] fileList, String ids);

    /**
     * 审核不通过回款申请
     * @param ids 回款IDS
     * @param auditDesc 审核意见
     * @return int
     */
    int setReceiptAuditNoPass(String ids, String auditDesc);

    /**
     * 统计回款金额
     * @param roleType 岗位类别
     * @param userId 员工ID
     * @return Map
     */
    Map statReceiptInfo(String roleType, Long userId);
}